Pytest à l’échelle : de 100 à 10k à 1M de tests
dans Bloc-notesPar Rémy DUTHU
Pytest à l’échelle : de 100 à 10k à 1M de tests
Salle MARI/SUGGAR - dimanche 1 novembre 2026 à 15:00 - 25 min
Une suite de 100 tests et une suite d’un million de tests ne se pilotent pas pareil. Cette conférence parcourt les trois ordres de grandeur : ce qui casse à chaque palier, et les stratégies pytest pour tenir. À 100 tests, pytest « juste marche ». À 10 000, le temps de collection, les fixtures partagées et la parallélisation (pytest-xdist) deviennent des sujets. À 1 000 000, on change de monde : sharding, exécution distribuée, sélection de tests par impact, cache, et surtout la lutte contre les tests instables (« flaky ») qui, à cette échelle, rendent une suite verte statistiquement impossible sans détection ni quarantaine automatiques. Palier par palier : 100 → bonnes fixtures, parametrize, structure de suite. 10k → temps de collection, xdist, isolation, markers, temps de CI. 1M → sharding, distribution, test selection, observabilité de la suite, détection et quarantaine des tests instables.
Suppport de présentation (à venir)
Notes personnelles :
- ? documenter les durations de test ?
- tester encore plus les nouveaux tests, qui sont des candidats a la flakyness
- mettre en quarantaine les test flaky
- mettre en cache des résultats de test (Bazel, Pants)
- test l'historique après le merge
pytest-split,pytest-randomly,pytest-timeout,pytest-picked,pytest-testmon,pytest-socket,pytest-xdist,pytest-rerunfailures,pytest-repeat,pytest-impacted,pytest-cov,time-machine
